1. Technical Field of the Invention
This invention relates to an optical filtering device and method for using the same for processing images, and more particularly to a filtering device used in the space domain, e.g., the device can be used in an auto-focus system for a camera.
2. Discussion of Background Art
The development of image processing techniques by use of computers is quite popular and is now widely used. Conventional image processing systems are used for extracting desired information from a visual image for emphasizing a selected major portion of the extracted information, and for extracting features after the pretreatment process has been carried out.
The basic steps involved in such image processing systems are as illustrated in FIG. 1, where the sampled image or video data array from an external visual information input device 10 is applied to filtering device 12. The image data array is filtered by device 12 whose output data are delivered to post-processing device 14 and then to a controlled driving device 16. The filtering device 12 and the post-processing device 14 are each controlled by control unit 18. In this type of image processing system, the filtering technique used in the filtering device plays an important role in the pretreatment stage of the image processing system.
As is well-known by those skilled in the art, the optical filtering techniques available are generally divided into two categories, i.e., "spatial frequency filtering" which is accomplished in a spatial frequency region, and "space-domain filtering" (or "space-region filtering") which is accomplished in a space domain (or space region).
The spatial frequency filtering technique can be achieved by taking the Fourier transform of a series of image information data, which is hereinafter referred to as an "image data series" or an "image data array". Such an image data array can be obtained, for example, by photographing an object. The image data array thus obtained is then subjected to the spatial frequency filtering technique by first taking the Fourier transform of the image data array to obtain Fourier-transformed data, multiplying the Fourier-transformed data by a spatial frequency filter, and thereafter taking its inverse Fourier transform. However, with use of this technique, a large number of arithmetic operations are necessary and a large storage capacity is needed, so that a low performance microprocessor cannot accomplish real-time processing using this technique. Therefore, spatial frequency filtering techniques are not capable of use with apparatus equipped with a low-capacity storage device.
On the other hand, the space-domain filtering technique can be carried out by the convolution of previously prepared operators, sometimes referred to as "window operators", with an image data array. Therefore, space domain filtering techniques of this type are more easily achieved than are spatial frequency filtering techniques.
Therefore, efforts have been made to apply space-domain filtering techniques to various equipment, such as the automatic focusing device of a camera. However, conventional space-domain filtering techniques have various problems of their own which heretofore have made their use unsatisfactory in such applications.
In conventional space-domain filtering techniques, one program is used/prepared to produce or generate operators having one meaningful function. Conventional operators are utilized in these programs, which operators are stored in memory; and no new operators are generated. Filtering processing is effected in these techniques by convolution of the operator generated by the program with the image data array obtained. Accordingly, in systems/techniques in which many different specific operators are required for performing various processes, e.g., differentiation, integration, and emphasis, operators for each of the required functions must be previously prepared. As a result, generation programs equal in number to the number of convolutions are required, creating a problem in that a large capacity program device, capable of storing a few kilobytes, and accordingly a large storage device capable of storing a large number of generation programs, are both required.
Furthermore, conventional space-domain filtering techniques use coefficients of the element functions (which will be described later) forming operators with values selected to be "0.44" or "0.14", and this adversely affects the arithmetic operations that are necessary to be carried out by the computer. As a result, there is an increased number of arithmetic operations, requiring a large storage device; this introduces yet another problem, which is the long time period required to carry out the arithmetic operations and to accomplish the filtering process. For example, where the convolution of one operator is carried out with a large image data array, the number of arithmetic operations becomes extremely large for obtaining the desired convolution, and hence a long delay time is involved in the process.